/**
 * 
 */
package HotelOfPumpkin.Card.FuncCard;

import HotelOfPumpkin.Instantiable;
import HotelOfPumpkin.Card.Card;
import HotelOfPumpkin.Card.CardFactory;
import HotelOfPumpkin.Card.FuncCard.internal.BlazeTotemCard;
import HotelOfPumpkin.Card.FuncCard.internal.DemonPumpkinTotemCard;
import HotelOfPumpkin.Card.FuncCard.internal.DivineTotem;
import HotelOfPumpkin.Card.FuncCard.internal.ExploreStoneCard;
import HotelOfPumpkin.Card.FuncCard.internal.ShriekCard;
import HotelOfPumpkin.Card.FuncCard.internal.SweetCard;

/**
 * @author Chensc
 *
 */
public class FuncCardFactory extends CardFactory {

	/**
	 * 
	 */
	public FuncCardFactory() {
		super();
		buildOnCards(7, new Instantiable<Card>() {
			@Override
			public Card instantiate() {
				return new ShriekCard();
			}			
		});
		buildOnCards(12, new Instantiable<Card>() {
			@Override
			public Card instantiate() {
				return new SweetCard();
			}			
		});
		buildOnCards(16, new Instantiable<Card>() {
			@Override
			public Card instantiate() {
				return new ExploreStoneCard();
			}			
		});
		buildOnCards(6, new Instantiable<Card>() {
			@Override
			public Card instantiate() {
				return new DivineTotem();
			}			
		});
		buildOnCards(10, new Instantiable<Card>() {
			@Override
			public Card instantiate() {
				return new BlazeTotemCard();
			}			
		});
		buildOnCards(12, new Instantiable<Card>() {
			@Override
			public Card instantiate() {
				return new DemonPumpkinTotemCard();
			}			
		});
	}

}
